package com.jidu.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Data
@Builder
@ApiModel(value = "ApplyStudentDto",description = "学生报名入参")
@NoArgsConstructor
@AllArgsConstructor
public class ApplyStudentDto implements Serializable {
    @ApiModelProperty(value = "学员姓名")
    private String name;

    @ApiModelProperty(value = "家长姓名")
    private String parentName;

    @ApiModelProperty(value = "联系方式")
    private String mobile;

    @ApiModelProperty(value = "学员生日")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthday;

    @ApiModelProperty(value = "课程id")
    private Long courseId;

    @ApiModelProperty(value = "班级id")
    private Long classId;

    @ApiModelProperty(value = "老师id")
    private Long teacherId;

    @ApiModelProperty(value = "总课时")
    private int number;

    @ApiModelProperty(value = "课程价格")
    private BigDecimal price;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "密码")
    private String password;

    private String sex;
    private int age;
    private String idCard;
    private String address;

    @ApiModelProperty(value = "时间筛选 开始时间")
    private String startTime;
    @ApiModelProperty(value = "时间筛选 结束时间")
    private String endTime;
    @ApiModelProperty(value = "门店id")
    private Long orgId;
    @ApiModelProperty(value = "课程状态：0未开始，1进行中, 2已结课, 3退课")
    private String status;


    @ApiModelProperty(value = "课程名称")
    private String courseName;
    @ApiModelProperty(value = "班级名称")
    private String className;
    @ApiModelProperty(value = "老师名称")
    private String teacherName;
    @ApiModelProperty(value = "学生id")
    private Long studentId;
    @ApiModelProperty(value = "课程学生关系表id")
    private Long courseStudentId;
    @ApiModelProperty(value = "是否转班 0否，1是")
    private String isChangeClass;
    @ApiModelProperty(value = "剩余课时数")
    private Integer resNum;
    @ApiModelProperty(value = "请假次数")
    private Integer leaveTimes;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    private String delFlag;

}
